package cn.assumejson.springframework.beans.factory.config;

import cn.assumejson.springframework.beans.factory.BeansException;

/**
 * 在工厂创建过程中的可插拔接口
 *
 * @author Mr. Li
 * @version 1.0
 * @since 1.0 2021/11/30 14:51
 */
@FunctionalInterface
public interface  BeanFactoryPostProcessor {

    /**
     * 在所有的 BeanDefinition 加载完成后，实例化 Bean 对象之前，
     * 提供修改 BeanDefinition 属性的机制
     *
     * @param beanFactory DefaultListableBeanFactory
     * @throws BeansException
     */
    void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException;
}
